package com.local.config;

import org.springframework.web.servlet.LocaleResolver;
import org.thymeleaf.util.StringUtils;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.Locale;

/**
 * @author lou ke
 * @version 1.0
 * @date 2020/4/18 13:39
 */
public class MyLocaleResolver implements LocaleResolver {

    // 解析请求
    @Override
    public Locale resolveLocale(HttpServletRequest request) {

        // 获取请求中的语言参数
        String language = request.getParameter("l");

        Locale locale = Locale.getDefault();  // 如果没有就使用默认的

        // 如果请求的链接携带了 'l' 参数，
        if (!StringUtils.isEmpty(language)) {
            // 分割得到 国家和语言
            String[] split = language.split("_");

            // 国家，地区
            locale = new Locale(split[0], split[1]);
        }
        return locale;
    }

    @Override
    public void setLocale(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Locale locale) {

    }
}
